Engineer II, Embedded Software

Engineering Bangalore, India


Description

Enphase Energy is a global energy technology company and a leading provider of solar, battery, and electric vehicle charging products. Founded in 2006, our innovative microinverter technology revolutionized solar power, making it a safer, more reliable, and scalable energy source. Today, the Enphase Energy System enables users to make, use, save, and sell their own power. Enphase is also one of the most successful and innovative clean energy companies in the world, with more than 80 million products shipped across 160 countries.
Join our dynamic teams designing and developing next-gen energy technologies and help drive a sustainable future!
This role at Enphase requires working onsite 3 days a week, with plans to transition back to a full 5-day in-office schedule over time.
About the Role
Enphase is seeking an Embedded Software Engineer II specializing in Linux Embedded Control to join our Application Development team. In this role, you will be responsible for developing high-performance C/C++ applications that drive our core energy products, including smart gateways, inverters, and home energy management systems.
You will focus on implementing control logic and application-layer features, helping transition energy management concepts into robust, production-ready software. Working within our Software Engineering group, you will collaborate with global teams in California, Texas, India, and New Zealand to build autonomous grid connection and regulation features.
What You Will Do
  • Develop & Implement: Build and maintain sophisticated C/C++ applications for embedded Linux systems that control power distribution and system stability.
  • System Integration: Implement application-level logic that interfaces with hardware drivers, network protocols, and cloud services under the guidance of senior staff.
  • Feature Ownership: Take responsibility for specific software modules and features from initial coding and prototyping to testing and deployment.
  • Quality & Testing: Write clean, maintainable code and develop compilation-time unit tests to ensure high reliability in mission-critical energy systems.
  • Collaborate: Partner with cross-functional teams (Hardware, Systems, and Cloud) to troubleshoot and resolve system-level bugs and performance issues.
  • Documentation: Contribute to technical requirements, design specifications, and unit test documentation.
Who You Are and What You Bring
  • Education: BE/BTech/MS/MTech in Computer Science, Computer Engineering, or Electrical Engineering.
  • Experience: 2 to 5 years of professional experience in Embedded C/C++ development.
  • Control Logic: Familiarity with implementing control systems, state machines, or algorithmic logic for embedded devices.
  • Toolchain Proficiency: Hands-on experience with GCC, GDB, GNU Make, and CMake; version control using Git; and task management via Jira/Confluence.
  • Problem Solving: Solid understanding of data structures, algorithms, and fundamental software design patterns.
  • Communication: Exposure to integrating communication protocols such as Zigbee, Bluetooth, Wi-Fi, or Ethernet is a plus.
  • Domain Interest: A basic understanding of (or a strong desire to learn) Solar, Energy Storage, and Power Electronics technologies.